package co.edu.uniquindio.ejbRemotos;
import java.util.List;

import javax.ejb.Remote;

import co.edu.uniquindio.logica.Administrador;
import co.edu.uniquindio.logica.Color;
import co.edu.uniquindio.logica.Marca;
import co.edu.uniquindio.logica.Modelo;
import co.edu.uniquindio.logica.Motor;

/**
 * esta clase representa la clase parametrizada ejb remota
 * @author andres felipe abril
 *
 */
@Remote
public interface ParametrizadaEjbRemote {
	/**
	 * esta es la firma  del metodo agregar marca del ejb parametrizada
	 * @param la nueva marca
	 */
	public void agregarMarca(Marca marca)throws Exception;
	/**
	 * esta es la fiirma del metodo agregar modelo 
	 * @param el nuevo modelo
	 * @throws java.lang.Exception
	 */
	public void agregarModelo(Modelo modelo) throws java.lang.Exception;
	/**
	 * esta es la firma del metodo agregar color 
	 * @param el nuevo color
	 * @throws java.lang.Exception
	 */
	public void agregarColor(Color color) throws Exception;
	/**
	 * esta es la firma de el metodo agregar motor 
	 * @param el nuevo motor
	 * @throws java.lang.Exception
	 */
	public void agregarMotor(Motor motor)throws Exception;
	/**
	 * esta es la firma de el metodo agregar administrador 
	 * @param admin
	 * @throws Exception
	 */
    public void agregarAdministrador(Administrador admin)throws Exception;
    /** 
     * esta es la firma del metodo eliminar marca
     * @param nombreM nombre de la marca
     * @throws Exception
     */
    public void eliminarMarca(String nombreM)throws Exception;
    /**
     * esta es la firma del metodo eliminar modelo
     * @param nombre del modelo
     * @throws Exception
     */
    public void eliminarModelo(String nombre)throws Exception;
    /**
	 * esta es la firma del metodo eliminar color
	 * @param codigo del color
	 * @throws Exception
	 */
	public void eliminarColor(int codigo)throws Exception;
	/**
	 * esta es la firma del metodo eliminar  motor
	 * @param ref: referencia del motor
	 * @throws Exception
	 */
	public void eliminarMotor(int ref)throws Exception;
	/**
     * esta es la firma del metodo eliminar adminstrador
     * @param contraseña del administrador
     * @throws Exception
     */
    public void eliminarAdministrador(String contrasenia)throws Exception;
    /**
     * en la juega con esto
     */
    public Administrador validarA(String contransenia)throws Exception ;
}